#ifndef YOOHOO_XMPPCORE_PROTOCOLKEY_H
#define YOOHOO_XMPPCORE_PROTOCOLKEY_H

#include "xmppcore/export.h"

#include <QtCore/QString>
#include <QtCore/QHash>

namespace yoohoo_xmppcore {

class YOOHOO_XMPPCORE_EXPORT ProtocolKey {
public:
	static const ProtocolKey NULL_PROTOCOL_KEY;
	ProtocolKey(QString localName = QString(), QString ns = QString());
	void setNs(QString ns);
	QString namespaceUri() const;
	void setLocalName(QString localName);
	QString localName() const;
	bool operator==(const ProtocolKey& other) const;
	bool isNull() const;

private:
	QString _ns;
	QString _localName;
};

uint qHash(const ProtocolKey& protocolKey);

}

#endif
